[INFO] cloning repository https://github.com/rektide/opencode-variance
[INFO] running `Command { std: "git" "-c" "credential.helper=" "-c" "credential.helper=/workspace/cargo-home/bin/git-credential-null" "clone" "--bare" "https://github.com/rektide/opencode-variance" "/workspace/cache/git-repos/https%3A%2F%2Fgithub.com%2Frektide%2Fopencode-variance", kill_on_drop: false }`
[INFO] [stderr] Cloning into bare repository '/workspace/cache/git-repos/https%3A%2F%2Fgithub.com%2Frektide%2Fopencode-variance'...
[INFO] running `Command { std: "git" "rev-parse" "HEAD", kill_on_drop: false }`
[INFO] [stdout] 8f0027c55cfd513ab0a01a819c0fe72988486999
[INFO] checking rektide/opencode-variance against master#c290daa1e5274a52e54a0f49e31bd70192abc606 for pr-133502-23
[INFO] running `Command { std: "git" "clone" "/workspace/cache/git-repos/https%3A%2F%2Fgithub.com%2Frektide%2Fopencode-variance" "/workspace/builds/worker-5-tc1/source", kill_on_drop: false }`
[INFO] [stderr] Cloning into '/workspace/builds/worker-5-tc1/source'...
[INFO] [stderr] done.
[INFO] started tweaking git repo https://github.com/rektide/opencode-variance
[INFO] finished tweaking git repo https://github.com/rektide/opencode-variance
[INFO] tweaked toml for git repo https://github.com/rektide/opencode-variance written to /workspace/builds/worker-5-tc1/source/Cargo.toml
[INFO] validating manifest of git repo https://github.com/rektide/opencode-variance on toolchain c290daa1e5274a52e54a0f49e31bd70192abc606
[INFO] running `Command { std: CARGO_HOME="/workspace/cargo-home" RUSTUP_HOME="/workspace/rustup-home" "/workspace/cargo-home/bin/cargo" "+c290daa1e5274a52e54a0f49e31bd70192abc606" "metadata" "--manifest-path" "Cargo.toml" "--no-deps", kill_on_drop: false }`
[INFO] crate git repo https://github.com/rektide/opencode-variance already has a lockfile, it will not be regenerated
[INFO] running `Command { std: CARGO_HOME="/workspace/cargo-home" RUSTUP_HOME="/workspace/rustup-home" "/workspace/cargo-home/bin/cargo" "+c290daa1e5274a52e54a0f49e31bd70192abc606" "fetch" "--manifest-path" "Cargo.toml", kill_on_drop: false }`
[INFO] [stderr]     Updating crates.io index
[INFO] [stderr]  Downloading crates ...
[INFO] [stderr]   Downloaded fs-lock v0.1.14
[INFO] [stderr]   Downloaded stability v0.2.1
[INFO] [stderr]   Downloaded insta v1.46.0
[INFO] [stderr]   Downloaded zmij v1.0.13
[INFO] [stderr]   Downloaded rust-ini v0.20.0
[INFO] [stderr]   Downloaded fs4 v0.13.1
[INFO] [stderr]   Downloaded clap_complete v4.5.65
[INFO] [stderr]   Downloaded assert_cmd v2.1.2
[INFO] [stderr]   Downloaded ratatui v0.26.3
[INFO] running `Command { std: "docker" "create" "-v" "/var/lib/crater-agent-workspace/builds/worker-5-tc1/source:/opt/rustwide/workdir:ro,Z" "-v" "/var/lib/crater-agent-workspace/builds/worker-5-tc1/target:/opt/rustwide/target:rw,Z" "-v" "/var/lib/crater-agent-workspace/cargo-home:/opt/rustwide/cargo-home:ro,Z" "-v" "/var/lib/crater-agent-workspace/rustup-home:/opt/rustwide/rustup-home:ro,Z" "-m" "1610612736" "--network" "none" "ghcr.io/rust-lang/crates-build-env/linux@sha256:3d5ced03c013a94a2f102a4510f48a6e9184255caf5fd8244f58017bde7f5210" "sleep" "infinity", kill_on_drop: false }`
[INFO] [stdout] 3e9724cd8976c835a70fbc5e5e58861dd4147319f3c6d1b4a88c368a05eb7e5b
[INFO] running `Command { std: "docker" "start" "3e9724cd8976c835a70fbc5e5e58861dd4147319f3c6d1b4a88c368a05eb7e5b", kill_on_drop: false }`
[INFO] running `Command { std: "docker" "inspect" "3e9724cd8976c835a70fbc5e5e58861dd4147319f3c6d1b4a88c368a05eb7e5b", kill_on_drop: false }`
[INFO] running `Command { std: "docker" "exec" "-e" "SOURCE_DIR=/opt/rustwide/workdir" "-e" "CARGO_HOME=/opt/rustwide/cargo-home" "-e" "RUSTUP_HOME=/opt/rustwide/rustup-home" "-e" "CARGO_TARGET_DIR=/opt/rustwide/target" "-w" "/opt/rustwide/workdir" "--user" "0:0" "3e9724cd8976c835a70fbc5e5e58861dd4147319f3c6d1b4a88c368a05eb7e5b" "/opt/rustwide/cargo-home/bin/cargo" "+c290daa1e5274a52e54a0f49e31bd70192abc606" "metadata" "--no-deps" "--format-version=1", kill_on_drop: false }`
[INFO] running `Command { std: "docker" "inspect" "3e9724cd8976c835a70fbc5e5e58861dd4147319f3c6d1b4a88c368a05eb7e5b", kill_on_drop: false }`
[INFO] running `Command { std: "docker" "exec" "-e" "SOURCE_DIR=/opt/rustwide/workdir" "-e" "CARGO_HOME=/opt/rustwide/cargo-home" "-e" "RUSTUP_HOME=/opt/rustwide/rustup-home" "-e" "CARGO_TARGET_DIR=/opt/rustwide/target" "-e" "CARGO_INCREMENTAL=0" "-e" "RUST_BACKTRACE=full" "-e" "RUSTFLAGS=--cap-lints=forbid" "-e" "RUSTDOCFLAGS=--cap-lints=forbid" "-w" "/opt/rustwide/workdir" "--user" "0:0" "3e9724cd8976c835a70fbc5e5e58861dd4147319f3c6d1b4a88c368a05eb7e5b" "/opt/rustwide/cargo-home/bin/cargo" "+c290daa1e5274a52e54a0f49e31bd70192abc606" "check" "--frozen" "--all" "--all-targets" "--message-format=json", kill_on_drop: false }`
[INFO] [stderr]    Compiling proc-macro2 v1.0.105
[INFO] [stderr]    Compiling quote v1.0.43
[INFO] [stderr]    Compiling libc v0.2.180
[INFO] [stderr]    Compiling zerocopy v0.8.33
[INFO] [stderr]    Compiling rustix v1.1.3
[INFO] [stderr]     Checking smallvec v1.15.1
[INFO] [stderr]    Compiling find-msvc-tools v0.1.7
[INFO] [stderr]    Compiling tiny-keccak v2.0.2
[INFO] [stderr]     Checking bitflags v2.10.0
[INFO] [stderr]    Compiling once_cell v1.21.3
[INFO] [stderr]    Compiling ucd-trie v0.1.7
[INFO] [stderr]    Compiling memchr v2.7.6
[INFO] [stderr]     Checking rustls-pki-types v1.13.2
[INFO] [stderr]    Compiling zmij v1.0.13
[INFO] [stderr]     Checking anstream v0.6.21
[INFO] [stderr]    Compiling cc v1.2.52
[INFO] [stderr]     Checking aho-corasick v1.1.4
[INFO] [stderr]     Checking clap_lex v0.7.7
[INFO] [stderr]     Checking percent-encoding v2.3.2
[INFO] [stderr]     Checking regex-syntax v0.8.8
[INFO] [stderr]    Compiling portable-atomic v1.13.0
[INFO] [stderr]    Compiling rustls v0.23.36
[INFO] [stderr]     Checking simd-adler32 v0.3.8
[INFO] [stderr]     Checking form_urlencoded v1.2.2
[INFO] [stderr]     Checking miniz_oxide v0.8.9
[INFO] [stderr]     Checking pest v2.8.5
[INFO] [stderr]     Checking webpki-roots v1.0.5
[INFO] [stderr]     Checking itertools v0.13.0
[INFO] [stderr]     Checking castaway v0.2.4
[INFO] [stderr]     Checking arraydeque v0.5.1
[INFO] [stderr]     Checking ryu v1.0.22
[INFO] [stderr]    Compiling syn v2.0.114
[INFO] [stderr]     Checking nom v7.1.3
[INFO] [stderr]     Checking compact_str v0.7.1
[INFO] [stderr]     Checking serde_json v1.0.149
[INFO] [stderr]     Checking getrandom v0.2.17
[INFO] [stderr]     Checking errno v0.3.14
[INFO] [stderr]     Checking signal-hook-registry v1.4.8
[INFO] [stderr]     Checking mio v0.8.11
[INFO] [stderr]     Checking signal-hook v0.3.18
[INFO] [stderr]     Checking getrandom v0.3.4
[INFO] [stderr]     Checking parking_lot_core v0.9.12
[INFO] [stderr]    Compiling const-random-macro v0.1.16
[INFO] [stderr]     Checking console v0.15.11
[INFO] [stderr]     Checking rand_core v0.6.4
[INFO] [stderr]     Checking signal-hook-mio v0.2.5
[INFO] [stderr]     Checking flate2 v1.1.8
[INFO] [stderr]     Checking const-random v0.1.18
[INFO] [stderr]     Checking dirs-sys v0.4.1
[INFO] [stderr]     Checking dlv-list v0.5.2
[INFO] [stderr]     Checking parking_lot v0.12.5
[INFO] [stderr]     Checking lru v0.12.5
[INFO] [stderr]     Checking webpki-roots v0.26.11
[INFO] [stderr]     Checking itertools v0.12.1
[INFO] [stderr]    Compiling ring v0.17.14
[INFO] [stderr]     Checking convert_case v0.6.0
[INFO] [stderr]     Checking shell-words v1.1.1
[INFO] [stderr]     Checking cassowary v0.3.0
[INFO] [stderr]     Checking predicates-core v1.0.9
[INFO] [stderr]     Checking crossterm v0.27.0
[INFO] [stderr]     Checking ahash v0.8.12
[INFO] [stderr]     Checking ppv-lite86 v0.2.21
[INFO] [stderr]     Checking pathdiff v0.2.3
[INFO] [stderr]     Checking indicatif v0.17.11
[INFO] [stderr]     Checking regex-automata v0.4.13
[INFO] [stderr]     Checking colored v2.2.0
[INFO] [stderr]     Checking directories v5.0.1
[INFO] [stderr]     Checking float-cmp v0.10.0
[INFO] [stderr]     Checking hashbrown v0.14.5
[INFO] [stderr]    Compiling pest_meta v2.8.5
[INFO] [stderr]     Checking unicode-truncate v1.1.0
[INFO] [stderr]     Checking fs-lock v0.1.14
[INFO] [stderr]     Checking normalize-line-endings v0.3.0
[INFO] [stderr]     Checking termtree v0.5.1
[INFO] [stderr]     Checking difflib v0.4.0
[INFO] [stderr]    Compiling assert_cmd v2.1.2
[INFO] [stderr]     Checking wait-timeout v0.2.1
[INFO] [stderr]     Checking similar v2.7.0
[INFO] [stderr]     Checking predicates-tree v1.0.12
[INFO] [stderr]     Checking rand_chacha v0.3.1
[INFO] [stderr]     Checking terminal_size v0.4.3
[INFO] [stderr]     Checking tempfile v3.24.0
[INFO] [stderr]     Checking clap_builder v4.5.54
[INFO] [stderr]     Checking rand v0.8.5
[INFO] [stderr]     Checking hashlink v0.8.4
[INFO] [stderr]     Checking ordered-multimap v0.7.3
[INFO] [stderr]     Checking rust-ini v0.20.0
[INFO] [stderr]     Checking yaml-rust2 v0.8.1
[INFO] [stderr]     Checking regex v1.12.2
[INFO] [stderr]     Checking bstr v1.12.1
[INFO] [stderr]     Checking predicates v3.1.3
[INFO] [stderr]    Compiling synstructure v0.13.2
[INFO] [stderr]    Compiling pest_generator v2.8.5
[INFO] [stderr]    Compiling zerovec-derive v0.11.2
[INFO] [stderr]    Compiling displaydoc v0.2.5
[INFO] [stderr]    Compiling serde_derive v1.0.228
[INFO] [stderr]    Compiling thiserror-impl v1.0.69
[INFO] [stderr]    Compiling clap_derive v4.5.49
[INFO] [stderr]    Compiling strum_macros v0.26.4
[INFO] [stderr]    Compiling stability v0.2.1
[INFO] [stderr]    Compiling async-trait v0.1.89
[INFO] [stderr]    Compiling pest_derive v2.8.5
[INFO] [stderr]    Compiling zerofrom-derive v0.1.6
[INFO] [stderr]    Compiling yoke-derive v0.8.1
[INFO] [stderr]     Checking rustls-webpki v0.103.8
[INFO] [stderr]     Checking zerofrom v0.1.6
[INFO] [stderr]     Checking thiserror v1.0.69
[INFO] [stderr]     Checking yoke v0.8.1
[INFO] [stderr]     Checking dialoguer v0.11.0
[INFO] [stderr]     Checking strum v0.26.3
[INFO] [stderr]     Checking ratatui v0.26.3
[INFO] [stderr]     Checking clap v4.5.54
[INFO] [stderr]     Checking zerovec v0.11.5
[INFO] [stderr]     Checking zerotrie v0.2.3
[INFO] [stderr]     Checking clap_complete v4.5.65
[INFO] [stderr]     Checking tinystr v0.8.2
[INFO] [stderr]     Checking potential_utf v0.1.4
[INFO] [stderr]     Checking icu_collections v2.1.1
[INFO] [stderr]     Checking icu_locale_core v2.1.1
[INFO] [stderr]     Checking serde v1.0.228
[INFO] [stderr]     Checking icu_provider v2.1.1
[INFO] [stderr]     Checking serde_spanned v0.6.9
[INFO] [stderr]     Checking toml_datetime v0.6.11
[INFO] [stderr]     Checking ron v0.8.1
[INFO] [stderr]     Checking json5 v0.4.1
[INFO] [stderr]     Checking chrono v0.4.42
[INFO] [stderr]     Checking insta v1.46.0
[INFO] [stderr]     Checking icu_properties v2.1.2
[INFO] [stderr]     Checking icu_normalizer v2.1.1
[INFO] [stderr]     Checking toml_edit v0.22.27
[INFO] [stderr]     Checking idna_adapter v1.2.1
[INFO] [stderr]     Checking idna v1.1.0
[INFO] [stderr]     Checking url v2.5.8
[INFO] [stderr]     Checking toml v0.8.23
[INFO] [stderr]     Checking ureq v2.12.1
[INFO] [stderr]     Checking config v0.14.1
[INFO] [stderr]     Checking oc-variance v0.1.0 (/opt/rustwide/workdir)
[INFO] [stdout] warning: unused import: `ValueEnum`
[INFO] [stdout]  --> src/cli.rs:1:32
[INFO] [stdout]   |
[INFO] [stdout] 1 | use clap::{Parser, Subcommand, ValueEnum};
[INFO] [stdout]   |                                ^^^^^^^^^
[INFO] [stdout]   |
[INFO] [stdout]   = note: `#[warn(unused_imports)]` (part of `#[warn(unused)]`) on by default
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused import: `ValueEnum`
[INFO] [stdout]  --> src/cli.rs:1:32
[INFO] [stdout]   |
[INFO] [stdout] 1 | use clap::{Parser, Subcommand, ValueEnum};
[INFO] [stdout]   |                                ^^^^^^^^^
[INFO] [stdout]   |
[INFO] [stdout]   = note: `#[warn(unused_imports)]` (part of `#[warn(unused)]`) on by default
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused import: `CacheManager`
[INFO] [stdout]  --> tests/variant_generation.rs:1:26
[INFO] [stdout]   |
[INFO] [stdout] 1 | use oc_variance::cache::{CacheManager, ModelInfo};
[INFO] [stdout]   |                          ^^^^^^^^^^^^
[INFO] [stdout]   |
[INFO] [stdout]   = note: `#[warn(unused_imports)]` (part of `#[warn(unused)]`) on by default
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused import: `ModelCapabilities`
[INFO] [stdout]  --> tests/variant_generation.rs:2:46
[INFO] [stdout]   |
[INFO] [stdout] 2 | use oc_variance::models::{generate_variants, ModelCapabilities};
[INFO] [stdout]   |                                              ^^^^^^^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused import: `Path`
[INFO] [stdout]  --> src/main.rs:6:17
[INFO] [stdout]   |
[INFO] [stdout] 6 | use std::path::{Path, PathBuf};
[INFO] [stdout]   |                 ^^^^
[INFO] [stdout]   |
[INFO] [stdout]   = note: `#[warn(unused_imports)]` (part of `#[warn(unused)]`) on by default
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused import: `ValueEnum`
[INFO] [stdout]  --> src/cli.rs:1:32
[INFO] [stdout]   |
[INFO] [stdout] 1 | use clap::{Parser, Subcommand, ValueEnum};
[INFO] [stdout]   |                                ^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused import: `Path`
[INFO] [stdout]  --> src/main.rs:6:17
[INFO] [stdout]   |
[INFO] [stdout] 6 | use std::path::{Path, PathBuf};
[INFO] [stdout]   |                 ^^^^
[INFO] [stdout]   |
[INFO] [stdout]   = note: `#[warn(unused_imports)]` (part of `#[warn(unused)]`) on by default
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused import: `ValueEnum`
[INFO] [stdout]  --> src/cli.rs:1:32
[INFO] [stdout]   |
[INFO] [stdout] 1 | use clap::{Parser, Subcommand, ValueEnum};
[INFO] [stdout]   |                                ^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: function `save_config` is never used
[INFO] [stdout]    --> src/config.rs:157:8
[INFO] [stdout]     |
[INFO] [stdout] 157 | pub fn save_config(config_dir: &Path, config: &OpenCodeConfig) -> Result<()> {
[INFO] [stdout]     |        ^^^^^^^^^^^
[INFO] [stdout]     |
[INFO] [stdout]     = note: `#[warn(dead_code)]` (part of `#[warn(unused)]`) on by default
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: multiple methods are never used
[INFO] [stdout]    --> src/models.rs:87:12
[INFO] [stdout]     |
[INFO] [stdout]  40 | impl TreeNode {
[INFO] [stdout]     | ------------- methods in this implementation
[INFO] [stdout] ...
[INFO] [stdout]  87 |     pub fn is_leaf(&self) -> bool {
[INFO] [stdout]     |            ^^^^^^^
[INFO] [stdout] ...
[INFO] [stdout]  95 |     pub fn expand(&mut self) {
[INFO] [stdout]     |            ^^^^^^
[INFO] [stdout] ...
[INFO] [stdout]  99 |     pub fn collapse(&mut self) {
[INFO] [stdout]     |            ^^^^^^^^
[INFO] [stdout] ...
[INFO] [stdout] 103 |     pub fn toggle(&mut self) {
[INFO] [stdout]     |            ^^^^^^
[INFO] [stdout] ...
[INFO] [stdout] 115 |     pub fn depth(&self) -> usize {
[INFO] [stdout]     |            ^^^^^
[INFO] [stdout] ...
[INFO] [stdout] 123 |     pub fn find_path(&self, path: &[String]) -> Option<&TreeNode> {
[INFO] [stdout]     |            ^^^^^^^^^
[INFO] [stdout] ...
[INFO] [stdout] 152 |     pub fn find_path_mut(&mut self, path: &[String]) -> Option<&mut TreeNode> {
[INFO] [stdout]     |            ^^^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: struct `ModelOptions` is never constructed
[INFO] [stdout]    --> src/models.rs:448:12
[INFO] [stdout]     |
[INFO] [stdout] 448 | pub struct ModelOptions {
[INFO] [stdout]     |            ^^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: enum `ReasoningConfig` is never used
[INFO] [stdout]    --> src/models.rs:457:10
[INFO] [stdout]     |
[INFO] [stdout] 457 | pub enum ReasoningConfig {
[INFO] [stdout]     |          ^^^^^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: struct `ValidationError` is never constructed
[INFO] [stdout]    --> src/models.rs:474:12
[INFO] [stdout]     |
[INFO] [stdout] 474 | pub struct ValidationError {
[INFO] [stdout]     |            ^^^^^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: associated items `new`, `from_config`, and `validate` are never used
[INFO] [stdout]    --> src/models.rs:480:12
[INFO] [stdout]     |
[INFO] [stdout] 479 | impl ModelOptions {
[INFO] [stdout]     | ----------------- associated items in this implementation
[INFO] [stdout] 480 |     pub fn new() -> Self {
[INFO] [stdout]     |            ^^^
[INFO] [stdout] ...
[INFO] [stdout] 489 |     pub fn from_config(config: &Value) -> Result<Self> {
[INFO] [stdout]     |            ^^^^^^^^^^^
[INFO] [stdout] ...
[INFO] [stdout] 539 |     pub fn validate(&self, capabilities: &ModelCapabilities) -> Vec<ValidationError> {
[INFO] [stdout]     |            ^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: struct `TreeTraversal` is never constructed
[INFO] [stdout]    --> src/models.rs:632:12
[INFO] [stdout]     |
[INFO] [stdout] 632 | pub struct TreeTraversal {
[INFO] [stdout]     |            ^^^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: associated items `new`, `current`, `move_down`, `move_up`, `move_to`, and `find_path_mut` are never used
[INFO] [stdout]    --> src/models.rs:638:12
[INFO] [stdout]     |
[INFO] [stdout] 637 | impl TreeTraversal {
[INFO] [stdout]     | ------------------ associated items in this implementation
[INFO] [stdout] 638 |     pub fn new(root: &TreeNode) -> Self {
[INFO] [stdout]     |            ^^^
[INFO] [stdout] ...
[INFO] [stdout] 647 |     pub fn current(&self) -> Option<&TreeNode> {
[INFO] [stdout]     |            ^^^^^^^
[INFO] [stdout] ...
[INFO] [stdout] 651 |     pub fn move_down(&mut self) -> bool {
[INFO] [stdout]     |            ^^^^^^^^^
[INFO] [stdout] ...
[INFO] [stdout] 660 |     pub fn move_up(&mut self) -> bool {
[INFO] [stdout]     |            ^^^^^^^
[INFO] [stdout] ...
[INFO] [stdout] 669 |     pub fn move_to(&mut self, index: usize) -> bool {
[INFO] [stdout]     |            ^^^^^^^
[INFO] [stdout] ...
[INFO] [stdout] 678 |     pub fn find_path_mut(&mut self, path: &[String]) -> Option<&mut TreeNode> {
[INFO] [stdout]     |            ^^^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: function `flatten_tree` is never used
[INFO] [stdout]    --> src/models.rs:689:4
[INFO] [stdout]     |
[INFO] [stdout] 689 | fn flatten_tree(node: &TreeNode, depth: usize, result: &mut Vec<(TreeNode, usize)>) {
[INFO] [stdout]     |    ^^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: function `check_path` is never used
[INFO] [stdout]    --> src/models.rs:698:4
[INFO] [stdout]     |
[INFO] [stdout] 698 | fn check_path(node: &TreeNode, path: &[String]) -> bool {
[INFO] [stdout]     |    ^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: function `check_children` is never used
[INFO] [stdout]    --> src/models.rs:714:4
[INFO] [stdout]     |
[INFO] [stdout] 714 | fn check_children(node: &TreeNode, path: &[String]) -> bool {
[INFO] [stdout]     |    ^^^^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: function `extract_tree_path` is never used
[INFO] [stdout]    --> src/models.rs:718:8
[INFO] [stdout]     |
[INFO] [stdout] 718 | pub fn extract_tree_path(node: &TreeNode) -> Vec<String> {
[INFO] [stdout]     |        ^^^^^^^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: function `get_cached_models` is never used
[INFO] [stdout]    --> src/models.rs:789:8
[INFO] [stdout]     |
[INFO] [stdout] 789 | pub fn get_cached_models(cache_dir: &Path) -> Result<Option<crate::cache::ModelsCache>> {
[INFO] [stdout]     |        ^^^^^^^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: method `refresh` is never used
[INFO] [stdout]    --> src/cache.rs:513:12
[INFO] [stdout]     |
[INFO] [stdout] 160 | impl CacheManager {
[INFO] [stdout]     | ----------------- method in this implementation
[INFO] [stdout] ...
[INFO] [stdout] 513 |     pub fn refresh(&self) -> Result<ModelsCache> {
[INFO] [stdout]     |            ^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: function `save_config` is never used
[INFO] [stdout]    --> src/config.rs:157:8
[INFO] [stdout]     |
[INFO] [stdout] 157 | pub fn save_config(config_dir: &Path, config: &OpenCodeConfig) -> Result<()> {
[INFO] [stdout]     |        ^^^^^^^^^^^
[INFO] [stdout]     |
[INFO] [stdout]     = note: `#[warn(dead_code)]` (part of `#[warn(unused)]`) on by default
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: multiple methods are never used
[INFO] [stdout]    --> src/models.rs:87:12
[INFO] [stdout]     |
[INFO] [stdout]  40 | impl TreeNode {
[INFO] [stdout]     | ------------- methods in this implementation
[INFO] [stdout] ...
[INFO] [stdout]  87 |     pub fn is_leaf(&self) -> bool {
[INFO] [stdout]     |            ^^^^^^^
[INFO] [stdout] ...
[INFO] [stdout]  95 |     pub fn expand(&mut self) {
[INFO] [stdout]     |            ^^^^^^
[INFO] [stdout] ...
[INFO] [stdout]  99 |     pub fn collapse(&mut self) {
[INFO] [stdout]     |            ^^^^^^^^
[INFO] [stdout] ...
[INFO] [stdout] 103 |     pub fn toggle(&mut self) {
[INFO] [stdout]     |            ^^^^^^
[INFO] [stdout] ...
[INFO] [stdout] 115 |     pub fn depth(&self) -> usize {
[INFO] [stdout]     |            ^^^^^
[INFO] [stdout] ...
[INFO] [stdout] 123 |     pub fn find_path(&self, path: &[String]) -> Option<&TreeNode> {
[INFO] [stdout]     |            ^^^^^^^^^
[INFO] [stdout] ...
[INFO] [stdout] 152 |     pub fn find_path_mut(&mut self, path: &[String]) -> Option<&mut TreeNode> {
[INFO] [stdout]     |            ^^^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: struct `ModelOptions` is never constructed
[INFO] [stdout]    --> src/models.rs:448:12
[INFO] [stdout]     |
[INFO] [stdout] 448 | pub struct ModelOptions {
[INFO] [stdout]     |            ^^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: enum `ReasoningConfig` is never used
[INFO] [stdout]    --> src/models.rs:457:10
[INFO] [stdout]     |
[INFO] [stdout] 457 | pub enum ReasoningConfig {
[INFO] [stdout]     |          ^^^^^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: struct `ValidationError` is never constructed
[INFO] [stdout]    --> src/models.rs:474:12
[INFO] [stdout]     |
[INFO] [stdout] 474 | pub struct ValidationError {
[INFO] [stdout]     |            ^^^^^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: associated items `new`, `from_config`, and `validate` are never used
[INFO] [stdout]    --> src/models.rs:480:12
[INFO] [stdout]     |
[INFO] [stdout] 479 | impl ModelOptions {
[INFO] [stdout]     | ----------------- associated items in this implementation
[INFO] [stdout] 480 |     pub fn new() -> Self {
[INFO] [stdout]     |            ^^^
[INFO] [stdout] ...
[INFO] [stdout] 489 |     pub fn from_config(config: &Value) -> Result<Self> {
[INFO] [stdout]     |            ^^^^^^^^^^^
[INFO] [stdout] ...
[INFO] [stdout] 539 |     pub fn validate(&self, capabilities: &ModelCapabilities) -> Vec<ValidationError> {
[INFO] [stdout]     |            ^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: struct `TreeTraversal` is never constructed
[INFO] [stdout]    --> src/models.rs:632:12
[INFO] [stdout]     |
[INFO] [stdout] 632 | pub struct TreeTraversal {
[INFO] [stdout]     |            ^^^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: associated items `new`, `current`, `move_down`, `move_up`, `move_to`, and `find_path_mut` are never used
[INFO] [stdout]    --> src/models.rs:638:12
[INFO] [stdout]     |
[INFO] [stdout] 637 | impl TreeTraversal {
[INFO] [stdout]     | ------------------ associated items in this implementation
[INFO] [stdout] 638 |     pub fn new(root: &TreeNode) -> Self {
[INFO] [stdout]     |            ^^^
[INFO] [stdout] ...
[INFO] [stdout] 647 |     pub fn current(&self) -> Option<&TreeNode> {
[INFO] [stdout]     |            ^^^^^^^
[INFO] [stdout] ...
[INFO] [stdout] 651 |     pub fn move_down(&mut self) -> bool {
[INFO] [stdout]     |            ^^^^^^^^^
[INFO] [stdout] ...
[INFO] [stdout] 660 |     pub fn move_up(&mut self) -> bool {
[INFO] [stdout]     |            ^^^^^^^
[INFO] [stdout] ...
[INFO] [stdout] 669 |     pub fn move_to(&mut self, index: usize) -> bool {
[INFO] [stdout]     |            ^^^^^^^
[INFO] [stdout] ...
[INFO] [stdout] 678 |     pub fn find_path_mut(&mut self, path: &[String]) -> Option<&mut TreeNode> {
[INFO] [stdout]     |            ^^^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: function `flatten_tree` is never used
[INFO] [stdout]    --> src/models.rs:689:4
[INFO] [stdout]     |
[INFO] [stdout] 689 | fn flatten_tree(node: &TreeNode, depth: usize, result: &mut Vec<(TreeNode, usize)>) {
[INFO] [stdout]     |    ^^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: function `check_path` is never used
[INFO] [stdout]    --> src/models.rs:698:4
[INFO] [stdout]     |
[INFO] [stdout] 698 | fn check_path(node: &TreeNode, path: &[String]) -> bool {
[INFO] [stdout]     |    ^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: function `check_children` is never used
[INFO] [stdout]    --> src/models.rs:714:4
[INFO] [stdout]     |
[INFO] [stdout] 714 | fn check_children(node: &TreeNode, path: &[String]) -> bool {
[INFO] [stdout]     |    ^^^^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: function `extract_tree_path` is never used
[INFO] [stdout]    --> src/models.rs:718:8
[INFO] [stdout]     |
[INFO] [stdout] 718 | pub fn extract_tree_path(node: &TreeNode) -> Vec<String> {
[INFO] [stdout]     |        ^^^^^^^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: function `get_cached_models` is never used
[INFO] [stdout]    --> src/models.rs:789:8
[INFO] [stdout]     |
[INFO] [stdout] 789 | pub fn get_cached_models(cache_dir: &Path) -> Result<Option<crate::cache::ModelsCache>> {
[INFO] [stdout]     |        ^^^^^^^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: method `refresh` is never used
[INFO] [stdout]    --> src/cache.rs:513:12
[INFO] [stdout]     |
[INFO] [stdout] 160 | impl CacheManager {
[INFO] [stdout]     | ----------------- method in this implementation
[INFO] [stdout] ...
[INFO] [stdout] 513 |     pub fn refresh(&self) -> Result<ModelsCache> {
[INFO] [stdout]     |            ^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stderr]     Finished `dev` profile [unoptimized + debuginfo] target(s) in 46.25s
[INFO] running `Command { std: "docker" "inspect" "3e9724cd8976c835a70fbc5e5e58861dd4147319f3c6d1b4a88c368a05eb7e5b", kill_on_drop: false }`
[INFO] running `Command { std: "docker" "rm" "-f" "3e9724cd8976c835a70fbc5e5e58861dd4147319f3c6d1b4a88c368a05eb7e5b", kill_on_drop: false }`
[INFO] [stdout] 3e9724cd8976c835a70fbc5e5e58861dd4147319f3c6d1b4a88c368a05eb7e5b
